import { Redirect, Route } from 'react-router-dom'
import { isAuth } from '@/utils/token'

const AuthRoute = ({ component: Component, ...rest }) => {
  return (
    <Route
      {...rest}
      render={(props) => {
        // console.log(props.location)
        // props.location 这个对象可以拿到当前访问的位置
        //判断是否有认证 : 有的话，渲染组件；没有的话，跳转到登录
        if (isAuth()) {
          return <Component />
        } else {
          // return <Redirect to="/login" />
          return (
            <Redirect
              to={{
                //重定向时要重定向到哪个页面的地址
                pathname: '/login',
                //跳转时携带的内容
                state: props.location.pathname,
              }}
            />
          )
        }
      }}
    ></Route>
  )
}

export default AuthRoute
